Introduction

Ce document explique les différentes étapes de la construction de la cascade des coûts. Pour faciliter l’explication du processus, nous avons découpé les activités en 3 classes :

  • CDO: Ce sont les charges directes opérationnelles. Elles représentent les activités sur lesquelles les charges des autres activités doivent être ventilées. Elles sont indexées par les codes 1 à 25.
  • CIO : Charges indirectes opérationnelles. Ce sont des charges à ventiler selon des codes temps. Elles sont indexées par les codes 26 à 35.
  • CSS : Charges de Structures et de support. Ce sont les autres charges qui se ventilent selon les clés temps ou les clés au taux de frais ou encore les deux. Elles sont indexées par les codes 36 à 61.

Importation des fichiers de paramétrage

Dans un premier temps, on importe les fichiers de paramétrage qui seront utilisés dans le calcul des clés de répartition des charges. Ici, nous importons les fichiers suivant :

  • Le paramétrage pour le calcul des clés temps
  • Le paramétrage des types de clés par code activité
  • Les montants du CICE par TCACAA de l’année
  • Le paramétrage des marquages d’activités dans lequel tout se repose sur les codes activités
  • Le paramétrage pour la construction des clés de taux de frais qui sont des clés qui se baseront sur les charges directes et les charges issues de la ventilation des coûts via les clés temps.
  • Le paramétrage de la FLDC qui indique les rubriques corp appartenant ou non aux charges de personnel ou d’immobilier
  • Les données brutes : Pour ces données, dans un premier temps nous avons utilisé les charges après retraitement. Ceci sera corrigé après les vérifications pour stabiliser l’outil.
  • Le paramétrage des valeurs en dur notamment les charges d’hebergement des facteurs ou la formation LCB.

À noter que ces données pour faciliter le traitement dans l’outil seront au format csv et le séparteur des décimal sera le “.” .

L’ensemble de ces paramétrages se fera dans un unique fichier Excel. Ce fichier contient une macro encapsulée dans un bouton pour valider les paramétrages afin que ces derniers puissent être utilisés dans le traitement de la cascade.

################################
# Le paramétrage des clés temps#
################################

param_temps <- read.csv2("param/param_temps.csv", header = TRUE, 
    sep = ";",dec = ",", encoding = "ISO-8859-2"
    )


param_temps <- param_temps %>%
    mutate(temps_min = if_else(is.na(temps_min), 0, temps_min))%>%
  filter(Code_Activite>0)


###########################################
# Le paramétrage des clés au taux de frais#
###########################################

param_tf <- read.csv2("param/param_tf.csv", header = TRUE, 
    sep = ";",dec = ",", encoding = "ISO-8859-2"
    )


param_type_cle <- read.csv2("param/param_type_cle.csv", header = TRUE, 
    sep = ";",dec = ",", encoding = "ISO-8859-2"
    )


######################
# La base de marquage#
######################

marquage <- read.csv2("param/marquage.csv", header = TRUE, 
    sep = ";",dec = ",", encoding = "ISO-8859-2"
    )

###########
# Le CICE #
###########

data_cice <- read.csv2("param/data_cice.csv", header = TRUE, 
    sep = ";",dec = ",", encoding = "ISO-8859-2"
    )



############################################
# Les rubrique corp concernées par la FLDC #
############################################

fldc <- read.csv2("param/data_FLDC.csv", header = TRUE, 
    sep = ";",dec = ",", encoding = "ISO-8859-2"
    )


#Part_CVAE<- 47222150 #A répartir selon une clé basée sur les charges de personnels
#Part_CFE <- 18473794 #A répartir selon une clé basée sur les loyers des charges et compléments de loyers

###################
# Base de charges #
###################

data <- read.csv2("param/data.csv", header = TRUE, 
    sep = ";",dec = ",", encoding = "ISO-8859-2"
    )%>%
  mutate(Chg_av_CICE_non_prod_form=ifelse(Rubrique_Corp%in%c("R63725LPA","R63730LPB"),0,Chg_av_CICE_non_prod_form) )
#De la base de charge on doit supprimer les charges sur RETRAITEMENT TAXE SUR SALAIRE et RETRAITEMENT DE LA TVA  




#####################################################################################################################
###################
# Valeurs en dur  #
###################

param_en_dur <- read.csv2("param/param_en_dur.csv", header = TRUE, 
    sep = ";",dec = ",", encoding = "ISO-8859-2"
    )

#param_en_dur <- read_delim("param/param_en_dur.csv", 
    #";", escape_double = FALSE, locale = locale(encoding = "ISO-8859-2"), 
    #trim_ws = TRUE)

#Valeurs en dur pour le traitement activité 30
charge_heberge_facteur<-param_en_dur[which(param_en_dur$Nom=="charge_heberge_facteur"),]$Valeur
#charge_heberge_facteur=12537410.3015909

# Formation
prestation_formation<-param_en_dur[which(param_en_dur$Nom=="prestation_formation"),]$Valeur
Formation_LCB<-param_en_dur[which(param_en_dur$Nom=="Formation_LCB"),]$Valeur

#prestation_formation=5308121 # A soustraire des charge du code 41
#Formation_LCB=12625761 # A allouer à l'activité 7

# FLDC
Part_CVAE<-param_en_dur[which(param_en_dur$Nom=="Part_CVAE"),]$Valeur
Part_CFE <-param_en_dur[which(param_en_dur$Nom=="Part_CFE"),]$Valeur


#Part_CVAE<- 47222150 #A répartir selon une clé basée sur les charges de personnels
#Part_CFE <- 1847379 #A répartir selon une clé basée sur les loyers des charges et compléments de loyers4 #


#parametrage des listes 
CDO =c('code_1','code_2','code_3','code_4','code_5','code_6','code_7','code_8','code_9','code_10',
'code_11','code_12','code_13','code_14','code_15','code_16','code_17','code_18','code_19','code_20','code_21',
'code_22','code_23','code_24','code_25')

CIO_int<-c('Code_Activite','weight_code_26','weight_code_27','weight_code_28','weight_code_29',
                           'weight_code_30',
                           'weight_code_31','weight_code_32','weight_code_33','weight_code_34','weight_code_35')

Marquage de la base de charges pilotées

Le réseau envoie une base de charges qui comporte un certain nombre d’élements. Cette base de charge est préalablement marquée par le réseau grâce au CAA, le TCA et la rubrique Corp.

Le marquage de la base des charges consiste à associer à chaque opération le code activité correspondant. Pour ce faire, nous avons besoin de 4 éléments qui nous permettent de construire un identifiant. Ces 4 éléments sont la concaténation de :

  • Le code du processus cascade qui est au format PCXXX X représentant un chiffre
  • Le code de l’activité métier qui est au format AMXXXX
  • Le code de l’activité Cascade qui est au format ACXX
  • Le code du label Analytique qui est au format AAAAAA A représentant une lettre.

Ces 4 éléments sont issus d’un marquage qui est réalisé par le réseau en se basant sur le CAA, le TCA et la rubrique Corp.

Grâce à ces 4 éléments, on construit la clé au format PCXXXAMXXXXACXXAAAAAA. De là, nous associons à chaque identifiant l’activité correspondante.

Traitement du CICE

Dans cette partie, il s’agit de construire les charges après retraitement du CICE , du non productif et formation. Nous partons de la base de chargesbrute dans laquelle nous avons les charges avant CICE, le non productif et la formation. Cette valeur est indiquée dans la variable Chg_av_CICE_non_prod_form.

Méthodologie de calcul des charges après retraitement de CICE et du non productif et formation

Le CICE (Crédit Impôt Compétitivité Emploi) est un système de qui permet de réduire les charges payées par les entreprise pour les personnels qui sont rémunérés moins de 2,5 fois le SMIC. Le périmètre des personnels concernés est défini à La Poste par la DRHRS à partir des éléments de rémunération versée aux personnels pendant la période considérée.

Dans les faits, un salaire inférieur à 2,5 fois le SMIC rapporte un crédit d’impôt de 7 % si l’agent est en Corse ou en Métropole et 9 % s’il est dans les DOM.

La DRAIE continue de faire la ventilation analytique du CICE : sur les CAA et TCA. Seule la DRAIE utilise cette ventilation analytique pour la CR et l’allocation des coûts du Réseau.

Nous allons calculer les clés de ventilation du CICE, le non productif et la formation rappelons que le CICE, le non productifet la formation ne concernent que les activités de nature Charges de Personnel. Par CAA et TCA, nous allons calculer le montant du CICE, du non productif et de la formation que nous retirerons des charges initiales.

La méthodologie consiste simplement à calculer les clés de répartition de ces charges et de les enlever de la base de charges brute.

# Création du TCACAA dans la base des charges
data<-data%>%
  mutate(TCACAA=stri_replace_all_fixed(paste(TCA,CAA), " ", ""))%>%
  mutate(Nat_chg_TCACAA=stri_replace_all_fixed(paste(Nat_charge,TCA,CAA), " ", ""))
  

cice_agg<-data%>%
  filter(Nat_charge=="1.2.2 - CHARGES - PERSONNEL")%>%
  group_by(Nat_chg_TCACAA,TCACAA)%>%
  summarise(cice_agg=sum(Chg_av_CICE_non_prod_form) )%>%
  left_join(data_cice)%>%
  mutate_all(funs(replace(., is.na(.), 0)))


sum_cice=sum(cice_agg$cice)

montatnts_CICE<-sum(data[which(data$Lib_Rubrique_Corp %in%c("CICE FONCTIONNAIRES","CICE SALARIES CDI","CICE SALARIES CDD","CICE PROVISIONNE")),]$Chg_av_CICE_non_prod_form)

cice_agg<-cice_agg%>%
  mutate(cle_a_retirer=cice/sum_cice)%>%
  mutate(mnt_cice_a_retirer=-cle_a_retirer*montatnts_CICE)%>%
  mutate(taux_cice=(cice_agg-mnt_cice_a_retirer)/cice_agg)%>%
  mutate_all(funs(replace(., is.na(.), 0)))%>%
  select(Nat_chg_TCACAA,taux_cice)


data<-data%>%
  left_join(cice_agg, by="Nat_chg_TCACAA")%>%
  mutate(taux_cice=ifelse(is.na(taux_cice), 1, taux_cice))#%>%
  #mutate(charge_Ap_Ret=Chg_av_CICE_non_prod_form*taux_cice)

# Calcul des clés formations et non productif

data<-data %>% left_join(marquage[,9:13])%>%
              mutate(code=stri_replace_all_fixed(paste('code_',Code_manuel), " ", ""))
  
 
 
 total_form_non_prod<-data%>%
   filter(#Nat_charge=="1.2.2 - CHARGES - PERSONNEL",
          Lib_TCA=="DT Direction Territoriale",Lib_CAA %in% c("FORMATION","NON  PRODUCTIFS"))%>%
   summarise(total_form_non_prod=sum(Chg_av_CICE_non_prod_form))
 
 total_form_non_prod<-total_form_non_prod$total_form_non_prod
 
 
 formation<-data%>%
   filter(Nat_charge=="1.2.2 - CHARGES - PERSONNEL",
          Lib_TCA=="DT Direction Territoriale",
          Code_manuel %in% c(3,10,38))%>%
   group_by(#Lib_TCA, Code_manuel, 
            Lib_Code)%>%
   summarise(charges=sum(Chg_av_CICE_non_prod_form))%>%
   mutate(poids=charges/sum(charges))%>%
   mutate(charge_int=ifelse(Lib_Code!="ST - Autres",
                            poids*total_form_non_prod,
                            poids*total_form_non_prod-total_form_non_prod))%>%
   select(Lib_Code,charge_int)
 
 charges_code<-data%>%
   filter(Code_manuel %in% c(3,10,38))%>%
   group_by( 
            Lib_Code)%>%
   summarise(charges_tot_code=sum(Chg_av_CICE_non_prod_form))

 data<-data%>%
   left_join(formation, by="Lib_Code")%>%
   left_join(charges_code,by="Lib_Code")%>%
   mutate(montant_no_prod_code=ifelse(is.na(charges_tot_code),0,charge_int*Chg_av_CICE_non_prod_form/charges_tot_code ))%>%
   mutate(#Ch.AP.Ret
          Ch_AP_Ret=ifelse(Rubrique_Corp%in%c("R75850A","R75850B","R75850C","R75851A"),0,
                           (Chg_av_CICE_non_prod_form*taux_cice)+montant_no_prod_code))
 
 rm("formation", "charges_code","cice_agg","total_form_non_prod", "sum_cice", "montatnts_CICE" )
 
 #data$verif=data$Ch_AP_Ret-data$Ch.AP.Ret
 
 #verif<-data%>%filter(Ch.AP.Ret!=Ch_AP_Ret)

Construction des clés

Nous allons expliciter ici la construction des clés temps et des clés au taux de frais.

Construction des clés temps pour les activités à ventiler

Méthodologie

Dans cette partie, nous construirons les clés temps et par la même occasion les coûts intermédiaires ventilés grâce à ces clés temps. Nous partons de la matrice de paramétrage qui a été importée ci-haut. Le fichier de paramétrage contient les éléments suivants :

  • Les 2 premières colonnes décrivent les codes et les libellés pour lesquels on doit calculer les clés temps. Les codes en ligne contiennent à la fois des activités opérationnelles COD, mais aussi les autres activités qui doivent être ventilées avec les clés temps.
  • la 3 ème colonne décrit les temps agent alloué à l’activité
  • les autres colonnes décrivent COI et les CSS qui doivent être ventilées sur les activités en lignes. Ainsi si pour une colonne on met ‘o’ pour une activité cela signifie que les charges de cette activité doivent être ventilées sur l’activité en ligne correspondante.

Cette façon de faire, suppose donc que nous devons connaître en amont les charges des différentes activités qui sont en colonne. Cette information se trouve dans la base de charge avec la colonne Ch_AP_Ret qui représente les charges après retraitement. Mais nous la calculerons dans la suite à partir des données directes issues de la base de charge Essayons de formaliser mathématiquement le calcul des clés temps.

  • Soit \(K=(1,...,k...,K)\) l’ensemble des activités sur lesquels on doit calculer des clés temps
  • Soit \(J=(1,...,j...,J)\) l’ensemble des activités pour lesquels on doit ventiler des charges.
  • Soit \(T_{k}\) le temps alloué à l’opération \(k\)
  • Soit \(\mathbb{1}_{k}(o)\) la fonction indicatrice qui indique si une activité de l’ensemble \(J\) doit être ventilé sur l’activité \(k\) de l’ensemble \(K\). Cette fonction représente le fichier de paramétrage avec les options “o”
  • Soit \(W_{k}^{j}\) la clé temps de l’activité \(j\) à ventiler sur l’activité \(k\)

\[ W_{k}^{j}=\frac{T_{k}*\mathbb{1}_{k}(o) }{\sum_{i \in (\mathbb{1}_{k}(o)} \mathbb{1}_{i}(o)*T_{i} }\] Traduit litéralement, cette formule signifie que le poids d’une activité est égal au rapport de son temps sur la somme des temps des activité sur laquelle la charge doit être ventilée.

Ce poids est appliqué à la charge après traitement des opérations à ventiler. Soit \(Charge_{k}^{j}\) la charge de l’opération \(j\) à ventiler sur l’opération \(k\), nous aurons donc : \[ChargeTA_{k}^{j}=Charge_{k}^{j}*W_{k}^{j}\]

# Jointure de la table des données avec la table de marquage et création de la variable de code
data<-data %>%mutate(#code=stri_replace_all_fixed(paste('code_',Code_manuel), " ", ""),
                     Ch_AP_Ret=ifelse(is.na(Ch_AP_Ret),0,Ch_AP_Ret))%>%
  filter(is.na(Code_manuel)==0)

# Calcul des charges intermédiaires pour la construction des taux de frais
#Cette table sera utilisée dans la suite pour le calcul des clés au taux de frais
Charges_for_TA<-data%>% 
    group_by(code)%>%
     summarise(charges_TA=sum(Ch_AP_Ret))

a<-as.data.frame(t(Charges_for_TA))
a<-a[-1,]
colnames(a)<-t(Charges_for_TA[,1])
a<- data.frame(lapply(a, function(x) as.numeric(as.character(x))))


## Calcul des charges 
drop_var<-names(a) %in%CDO
a<-a[!drop_var]


#Stockage des variables concernées : ce sont les variables en colonne
liste_col=colnames(param_temps)[4:length(colnames(param_temps))]





cle_temps<-param_temps[,1:2]

#Boucle pour construire la variable de clé temps en fonction des effectifs temps
for (i in 1:length(liste_col))
{
  # Nouvelle variable de clé
  var<-stri_replace_all_fixed( paste("weight_",liste_col[i]), " ", "")
  #Variable sur laquelle calculer la clé
  code<-stri_replace_all_fixed(liste_col[i]," ","")
    sum_temps=sum(param_temps[which(param_temps[[paste(code)]]=="o"),]$temps_min)
  count_oui=nrow(param_temps[which(param_temps[[paste(code)]]=="o"),])
  # Construction de la variable
  cle_temps[[paste(var)]]=ifelse(param_temps[[paste(code)]]!="o",0,
                              param_temps$temps_min/sum(param_temps[which(param_temps[[paste(code)]]=="o"),]$temps_min))
#}
  # Traitement des cas particuliers où un seul poids existe, on fait le rapport sur la somme des effectifs
  cle_temps[[paste(var)]]<-ifelse(param_temps[[paste(code)]]=="o" 
                                    & param_temps$Code_Activite==11 
                                    & count_oui==1
                                ,(param_temps$temps_min/sum(param_temps$temps_min))
                                ,cle_temps[[paste(var)]])
 
}

Les traitements spécifiques

Toutes les activités ne suivent pas la même logique mathématique énoncée ci-haut pour calculer leurs clés temps. Il existe des cas spécifiques ; ces derniers sont :

  • La charge 32: Directeur de Secteur (DS) est répartie via une clé temps agent des personnes encadrées. Cette clé est directement intégrée dans la table de paramétrage des clés temps en dur.
  • La charge 33: Responsable Espace Comercial (REC) est répartie via une clé temps agent des personnes encadrées. Cette clé est directement intégrée dans la table de paramétrage des clés temps en dur.
  • La charge 30 CIE - Loyers et Charges Immobilicres (hors Cplts de Loyers), pour cette charge le réseau donne un montant qui se déverse sur l’hébergement des facteurs, ainsi on doit calculer les clés de sorte à intégrer cette partie et avoir une répartition à 100%. La valeur fournie par le réseau est stockée en dur dans la variable charge_heberge_facteur
  • La charge 41 SSM - Formation c’est le même pricipe que la charge 30 , sauf qu’on doit retirer de la charge les prestation de formation, ensuite allouer un montant à la formation LBC et répartir le reste de sorte à tenir 100% avec la charge total en dehors des prestations de formation.

Calcul des charges réparties aux clés temps : Répartition primaire

Après avoir calculé les clés temps et traité les cas spécifiques, nous pouvons calculer les charges ventilés aux clés temps. Nous appliquons juste le même principe énoncé ci-haut en multipliant les charges par les clés obtenues. C’est une répartition sur les activités opérationnelles sans prendre en compte la répartition sur les activités non opérationnelles.

Ci-dessous, la matrice des clés temps

Matrice des clés temps
Code_Activite Activite weight_code_26 weight_code_27 weight_code_28 weight_code_29 weight_code_30 weight_code_31 weight_code_32 weight_code_33 weight_code_34 weight_code_35 weight_code_36 weight_code_37 weight_code_38 weight_code_39 weight_code_40 weight_code_41 weight_code_42 weight_code_43 weight_code_44 weight_code_45 weight_code_46 weight_code_47 weight_code_48 weight_code_49 weight_code_50 weight_code_51 weight_code_52 weight_code_53 weight_code_54 weight_code_55 weight_code_56 weight_code_57 weight_code_58 weight_code_59 weight_code_60
1 Activités Production CCC en BP 0.026688422523142 0.024637349422906 0.033144903516254 0.032629314090619 0.031685822965153 0.038259967957694 0.052652675 0.050955316 0.039062732082359 0.039062732082359 NA NA NA NA NA 0.027638810829473 NA 0 0.033329467336630 NA NA NA 0.033329467336630 0.033329467336630 0.000000000000000 0.033329467336630 0.000000000000000 NA NA NA 0.037196667553407 NA 0 NA NA
2 Hébergement des facteurs 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.035526181964282 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
3 Activités Production CCC hors BP 0.001487347270800 0.001373040852906 0.001847167315456 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.001540312463943 NA 0 0.001857453067425 NA NA NA 0.001857453067425 0.001857453067425 0.000000000000000 0.001857453067425 0.000000000000000 NA NA NA 0.002072972350480 NA 0 NA NA
4 Commerçants 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
5 DPOM Corse Courrier 0.000000000000000 0.076852541526481 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.086215153284297 NA 0 0.103966308573860 NA NA NA 0.103966308573860 0.103966308573860 0.000000000000000 0.103966308573860 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
6 Activités Colis 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
7 Activités LCB en BP 0.176342702071992 0.162790317238113 0.000000000000000 0.215596909427903 0.209362828927221 0.252801233381149 0.510000000 0.032236911 0.258105465759337 0.258105465759337 NA NA NA NA NA 0.387317536210123 NA 0 0.220223144461430 NA NA NA 0.220223144461430 0.220223144461430 0.000000000000000 0.220223144461430 0.000000000000000 NA NA NA 0.245775517783176 NA 0 NA NA
8 Responsable Clientèles Particuliers (RC Part) 0.014335196269286 0.013233500002710 0.017803176520457 0.017526237124566 0.017019458185116 0.020550639493756 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.017902311588744 NA NA NA 0.017902311588744 0.017902311588744 0.000000000000000 0.017902311588744 0.000000000000000 NA NA NA 0.019979507199389 NA 0 NA NA
9 Commissionnement LCB 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
10 Activités LCB hors BP 0.018452886635810 0.017034735399348 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.023044632250612 NA NA NA 0.023044632250612 0.023044632250612 0.000000000000000 0.023044632250612 0.000000000000000 NA NA NA 0.025718488569257 NA 0 NA NA
11 Hébergement LCB 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.007254005292749 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.005608725231671 0.000000000000000 0.005608725231671 NA NA NA 0.000000000000000 NA 0 NA NA
12 Activités Guichet 0.480188432779206 0.443284731308507 0.596355938995163 0.587079254393867 0.570103596709888 0.688388159167402 0.437347325 0.916807773 0.702831802158303 0.702831802158303 NA NA NA NA NA 0.497288187212165 NA 1 0.599676682721299 NA NA NA 0.599676682721299 0.599676682721299 0.000000000000000 0.599676682721299 0.000000000000000 NA NA NA 0.669256846544291 NA 1 NA NA
13 Charges Cantonnées 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
30 CIE - Loyers et Charges Immobilières (hors Cplts de Loyers) 0.011678033717199 0.010780547146000 0.014503191429935 0.014277585338321 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
32 Directeur de Secteur (DS) 0.035582202639028 0.032847619933108 0.044190272854970 0.043502865893934 0.042244961183180 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
33 Responsable Espace Comercial (REC) 0.047817829948761 0.044142908186918 0.059385951291577 0.058462166176251 0.056771706646223 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
34 Responsable d’Exploitation (REX) 0.025294962689488 0.023350980518984 0.031414336949415 0.030925667554540 0.030031438126188 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
35 CIE - Autres 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
37 ST - Locaux 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
38 ST - Autres 0.135934825503845 0.125487888681916 0.168820269235356 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
39 Structures Nationales 0.007767876810507 0.007170895735355 0.009647086754085 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
40 Charges diverses 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
41 SSM - Formation 0.007925580463851 0.007316479462131 0.009842942180523 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
45 SSM - Comptabilité Bureau 0.010503700677084 0.009696464584617 0.013044762956810 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
48 SSM - Social 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
49 SSM - Syndical 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA
50 SSM - DSEM 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 NA NA NA NA NA 0.000000000000000 NA 0 0.000000000000000 NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA NA NA 0.000000000000000 NA 0 NA NA

Ci-dessous la matrice des charges obtenus par ventilation avec les clés temps

Le programme ci-dessus nous a permis de calculer les clés temps, mais aussi les charges intermédiaires liées à ces clés temps.

Dans la partie qui suit, nous allons calculer les clés au taux de frais qui dépendent des charges intermédiaires qui ont été calculées à partir des temps.

Calcul des clés taux de frais

Méthodologie

Les clefs basées sur les coûts (taux de frais) doivent être calculées à partir des coûts directs des activités opérationnelles (codes 1 à 25) + charges indirectes réparties (codes 26 à 35). Les coûts directs des activités opérationnelles ont été identifiés via le mécanisme de marquage. Nous allons coupler cette information avec les coûts indirectes issues de la ventilation via les clés temps pour déterminer les clés au taux de frais.

Ces clés au taux de frais s’appliquent à des activités opérationnelles. Pour définir les opérations sur lesquelles ils s’appliquent, nous utilisons un autre fichier de paramétrage similaire au paramétrage des clés temps.
Voici les étapes de calcul des clés au taux de frais sur les différentes activités qui doivent en bénéficier.

  1. On calcule les coûts directes des opérations ayant les codes 1 à 25
  2. On calcule les coûts indirectes issues de la répartition via les clés temps pour les codes 11 à 20
  3. On somme les coûts directs avec les coûts indirects des opérations de code 1 à 25 pour les charges sur les opérations de 26 à 35.
  4. On importe le paramétrage des taux de frais.
  5. On calcule le poids.

Soit \(\mathbb{1}_{j}(o)\) l’indicatrice qui indique si une charge doit être déversée ou non sur les activités opérationnelles. On note \(CDI^{j}\) les charges directes et indirectes de l’activité opérationnelle \(j\).
On note \(Wtf_{k}^{j}\) la clé au taux de frais de l’activité k sur l’activité j. \(Wtf_{k}^ {j}\) est définis par :

\[ Wtf_{k}^{j}=\frac{CDI^{j}}{\sum_{i}(\mathbb{1}_{i}(o))*CDI^{i}} \]

Après avoir arrangé les tables on peut procéder au calcul des clés au taux de frais.

Traitement spécifique de la DPOM COrse

La clé taux de frais qui est calculé ci-haut pour la l’activité ST - Transverses en DPOM-DCR n’est pas bonne, cette clé doit être calculé dur la base de la répartition des charges après retraitement sur ls activités pour lesquelles elle doit se ventiler. Le programme ci-dessous va corriger cette clé.

code Code_Activite Activite weight_code_26 weight_code_27 weight_code_28 weight_code_29 weight_code_30 weight_code_31 weight_code_32 weight_code_33 weight_code_34 weight_code_35 weight_code_36 weight_code_37 weight_code_38 weight_code_39 weight_code_40 weight_code_41 weight_code_42 weight_code_43 weight_code_44 weight_code_45 weight_code_46 weight_code_47 weight_code_48 weight_code_49 weight_code_50 weight_code_51 weight_code_52 weight_code_53 weight_code_54 weight_code_55 weight_code_56 weight_code_57 weight_code_58 weight_code_59 weight_code_13 weight_code_60
code_1 1 Activités Production CCC en BP NA NA NA NA NA NA NA NA NA NA 0.004240115119349 0.034114031448643 0.034114031448643 0.034114031448643 0.034114031448643 NA 0.031402098801064 NA NA 0.035456524598891 0.031402098801064 0.031402098801064 NA NA 0.034114031448643 NA 0.034114031448643 0.031402098801064 0.034114031448643 0.031402098801064 NA 0.031402098801064 NA NA NA NA
code_10 10 Activités LCB hors BP NA NA NA NA NA NA NA NA NA NA 0.000000000000000 0.023159093669351 0.023159093669351 0.023159093669351 0.023159093669351 NA 0.021318035912668 NA NA 0.000000000000000 0.021318035912668 0.021318035912668 NA NA 0.023159093669351 NA 0.023159093669351 0.021318035912668 0.023159093669351 0.021318035912668 NA 0.021318035912668 NA NA NA NA
code_11 11 Hébergement LCB NA NA NA NA NA NA NA NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA 0.000000000000000 NA NA NA NA
code_12 12 Activités Guichet NA NA NA NA NA NA NA NA NA NA 0.618344260110375 0.656239684793249 0.656239684793249 0.656239684793249 0.656239684793249 NA 0.604071185490943 NA NA 0.682064755719926 0.604071185490943 0.604071185490943 NA NA 0.656239684793249 NA 0.656239684793249 0.604071185490943 0.656239684793249 0.604071185490943 NA 0.604071185490943 NA NA NA NA
code_13 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
code_2 2 Hébergement des facteurs NA NA NA NA NA NA NA NA NA NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA 0.000000000000000 NA NA 0.000000000000000 0.000000000000000 0.000000000000000 NA NA 0.000000000000000 NA 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA 0.000000000000000 NA NA NA NA
code_3 3 Activités Production CCC hors BP NA NA NA NA NA NA NA NA NA NA 0.000000000000000 0.001917097517608 0.001917097517608 0.001917097517608 0.001917097517608 NA 0.001764695730841 NA NA 0.000000000000000 0.001764695730841 0.001764695730841 NA NA 0.001917097517608 NA 0.001917097517608 0.001764695730841 0.001917097517608 0.001764695730841 NA 0.001764695730841 NA NA NA NA
code_4 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
code_5 5 DPOM Corse Courrier NA NA NA NA NA NA NA NA NA NA 0.756122853856315 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 NA 0.079496105632109 NA NA 0.000000000000000 0.079496105632109 0.079496105632109 NA NA 0.000000000000000 NA 0.000000000000000 0.079496105632109 0.000000000000000 0.079496105632109 NA 0.079496105632109 NA NA NA NA
code_6 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
code_7 7 Activités LCB en BP NA NA NA NA NA NA NA NA NA NA 0.238828252533134 0.253464917963482 0.253464917963482 0.253464917963482 0.253464917963482 NA 0.233315444071023 NA NA 0.263439550152776 0.233315444071023 0.233315444071023 NA NA 0.253464917963482 NA 0.253464917963482 0.233315444071023 0.253464917963482 0.233315444071023 NA 0.233315444071023 NA NA NA NA
code_8 8 Responsable Clientèles Particuliers (RC Part) NA NA NA NA NA NA NA NA NA NA 0.017260474311903 0.018318287970852 0.018318287970852 0.018318287970852 0.018318287970852 NA 0.016862055415322 NA NA 0.019039169528406 0.016862055415322 0.016862055415322 NA NA 0.018318287970852 NA 0.018318287970852 0.016862055415322 0.018318287970852 0.016862055415322 NA 0.016862055415322 NA NA NA NA
code_9 9 Commissionnement LCB NA NA NA NA NA NA NA NA NA NA 0.012048491031212 0.012786886636815 0.012786886636815 0.012786886636815 0.012786886636815 NA 0.011770378946029 NA NA 0.000000000000000 0.011770378946029 0.011770378946029 NA NA 0.012786886636815 NA 0.012786886636815 0.011770378946029 0.012786886636815 0.011770378946029 NA 0.011770378946029 NA NA NA NA

Calcul des clés finales : Répartition secondaire

Dans les étapes précédentes, nous avons calculé les clés au taux de frais et les clés au temps. Rappelons que l’objectif de la cascade est de déverser sur les activités opérationnelles toutes les charges des autres activités.

Méthodologie

Nous avons vu avec les clés temps que certaines activités se déversent sur d’autres activités non-opérationnelles. Ansi certaines CIO sont répartis sur d’autres CIO qui sont eux-mêmes répartis sur les CDO. Il convient donc de mettre à jour les clés sur les CIO des activités qui ont un bout qui est réparti sur les autres CIO.
Dans cette partie, nous allons nous atteler à cette tâche pour obtenir les clés finales sur les activités opérationnelles.

On peut commencer le calcul à proprement dit des clés finales. Mais avant de commencer, on va traiter des cas spécifiques. Il s’agit des clés avec les codes 50 et 52. Ces derniers se répartissent en parti grâce aux clés temps sur l’activité 11 puis le reste est réparti au taux de frais.

Une fois ces cas gérés, nous passons au traitement des charges qui se déversent sur d’autres charges non-opérationnelles. Nous en profitons pour créer en même temps la table des clés finales.
Avant de commencer ce traitement à proprement dit, essayons de formaliser concrétement ce que nous faisont dans cette partie.

  • On note \(W^{ij}_{CDO-CIO}\) la clé primaire de la CIO \(j\) qui se déverse dans un CDO \(i\).
  • On note \(W^{jk}_{CIO-CIO}\) la clé primaire de la CIO \(j\) qui se déverse dans un CIO \(k\).

La clé finale de l’activité j sur l’activité opérationnelle i est données par :

\[ W^{ij}_{fin}=W^{ij}_{CDO-CIO} + \sum_{k}W^{jk}_{CIO-CIO}*W^{ik}_{CDO-CIO} \]

Ce formalise suppose un ordre de traitement des clés pour tenir compte des cas d’imbrication. Dans le cas de la cascade en date de février 2018, seul l’activité 30 présente une imbrication de clés ainsi, il convient de traiter cette activité en premier et de mettre à jour les clés primaires avant le calcul de la clé finale des autres CIO.

# Selection des codes activité 1 à 25: les COD 
# C'est la table de la répartition sur les activités opérationnelles
# Ces clés ne font pas 100% car il y a une partie qui va se déverser sur les activités non opérationnelles
cle_ini<-cle_fin%>%
  filter(Code_Activite%in%c(1:25))%>%
  arrange(Code_Activite)

# On remplace les valeurs manquantes par zeros
cle_ini[is.na(cle_ini)]<-0

# On selectionne clés sur les COD des activités COI qui se déversent dans d'autres COI. Voir si on ne peut pas les mettre en paramètre.
# C'est la répartion sur les activités opérationnelles des activités non opérationnelles sur lesquelles se déversent d'autres activités non opérationnelles
cle_int<-cle_ini%>%
  select(c("weight_code_30",
            "weight_code_32",
            "weight_code_33",
            "weight_code_34",
            "weight_code_35",
            "weight_code_38",
            "weight_code_39",
            "weight_code_40",
            "weight_code_41",
            "weight_code_45"))
  
# transoposition de la matrice pour faciliter les opérations de calcul
cle_int<-as.data.frame(t(cle_int))

# Clé des COI qui se déversent sur les autres COI
cle_venti<-cle_temps%>%
  filter(Code_Activite%in%c(30,
                          32,
                          33,
                          34,
                          35,
                          38,
                          39,
                          40,
                          41,
                          45))%>%
  arrange(Code_Activite)%>%
  select(3:7)
  
cle_venti[is.na(cle_venti)]<-0  

# Append des deux tables 
cle_venti<-cbind(cle_venti,cle_int)


## Cette fonction permet de calculer la clé correcte des COD pour les COI qui se déversent sur d'autre COI
correct_cle <- function(data, cle){
var<-data[[paste(cle)]]
test<-data%>%
          mutate_at(vars(starts_with("V")), funs(.*var))
          #mutate_each(funs(.*var), starts_with("V")) vars(starts_with("weight_"))
#test<-test %>% summarize_each(funs(sum), starts_with("V"))  
test<-test %>% summarize_at(vars(starts_with("V")),funs(sum))  
test<-as.data.frame(t(test))


insertRow <- function(existingDF, newrow, r) {
  existingDF[seq(r+1,nrow(existingDF)+1),] <- existingDF[seq(r,nrow(existingDF)),]
  existingDF[r,] <- newrow
  existingDF
}

#newrow <- 0
#test <- insertRow(test,newrow,3)
test<-as.matrix(test)
#cle_venti$newvar<-test[,1]
return(test)
}

cle_cor<-cle_ini[,1:7]
#Modif
cle_cor$cor_weight_code_30=as.numeric(correct_cle(cle_venti,"weight_code_30")+cle_cor$weight_code_30)

cle_venti[1,6:length(cle_venti)]<-t(cle_cor$cor_weight_code_30)

liste_col=colnames(cle_venti)[1:4]

Calcul des clés finales

Activite Code_Activite weight_code_26 weight_code_27 weight_code_28 weight_code_29 weight_code_30 weight_code_31 weight_code_32 weight_code_33 weight_code_34 weight_code_35 weight_code_36 weight_code_37 weight_code_38 weight_code_39 weight_code_40 weight_code_41 weight_code_42 weight_code_43 weight_code_44 weight_code_45 weight_code_46 weight_code_47 weight_code_48 weight_code_49 weight_code_50 weight_code_51 weight_code_52 weight_code_53 weight_code_54 weight_code_55 weight_code_56 weight_code_57 weight_code_58 weight_code_59 weight_code_60
Activités Production CCC en BP 1 0.037923826256542 0.035009283824318 0.047098383621224 0.039649062054532 0.037976063450308 0.038259967957694 0.052652675 0.050955316 0.039062732082359 0.039062732082359 0.004240115119349 0.034114031448643 0.034114031448643 0.034114031448643 0.034114031448643 0.027638810829473 0.031402098801064 0 0.033329467336630 0.035456524598891 0.031402098801064 0.031402098801064 0.033329467336630 0.033329467336630 0.033922695219703 0.033329467336630 0.033922695219703 0.031402098801064 0.034114031448643 0.031402098801064 0.037196667553407 0.031402098801064 0 0 0
Hébergement des facteurs 2 0.000414875950822 0.000382991679583 0.000515243017803 0.000507228094740 0.035526181964282 0.000000000000000 0.000000000 0.000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0 0 0
Activités Production CCC hors BP 3 0.001775047235052 0.001638630343709 0.002204467847120 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000 0.000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.001917097517608 0.001917097517608 0.001917097517608 0.001917097517608 0.001540312463943 0.001764695730841 0 0.001857453067425 0.000000000000000 0.001764695730841 0.001764695730841 0.001857453067425 0.001857453067425 0.001906345044390 0.001857453067425 0.001906345044390 0.001764695730841 0.001917097517608 0.001764695730841 0.002072972350480 0.001764695730841 0 0 0
Commerçants 4 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000 0.000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0 0 0
DPOM Corse Courrier 5 0.000683305134558 0.077483332924810 0.000848610768862 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000 0.000000000 0.000000000000000 0.000000000000000 0.756122853856315 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.086215153284297 0.079496105632109 0 0.103966308573860 0.000000000000000 0.079496105632109 0.079496105632109 0.103966308573860 0.103966308573860 0.000000000000000 0.103966308573860 0.000000000000000 0.079496105632109 0.000000000000000 0.079496105632109 0.000000000000000 0.079496105632109 0 0 0
Activités Colis 6 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000 0.000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0 0 0
Activités LCB en BP 7 0.247628733580314 0.228597836049683 0.088531595839025 0.251083699327448 0.240489181910098 0.252801233381149 0.510000000 0.032236911 0.258105465759337 0.258105465759337 0.238828252533134 0.253464917963482 0.253464917963482 0.253464917963482 0.253464917963482 0.387317536210123 0.233315444071023 0 0.220223144461430 0.263439550152776 0.233315444071023 0.233315444071023 0.220223144461430 0.220223144461430 0.252043302882757 0.220223144461430 0.252043302882757 0.233315444071023 0.253464917963482 0.233315444071023 0.245775517783176 0.233315444071023 0 0 0
Responsable Clientèles Particuliers (RC Part) 8 0.017366319296871 0.016031673521946 0.021567590854353 0.017769233891216 0.017019458185116 0.020550639493756 0.000000000 0.000000000 0.000000000000000 0.000000000000000 0.017260474311903 0.018318287970852 0.018318287970852 0.018318287970852 0.018318287970852 0.000000000000000 0.016862055415322 0 0.017902311588744 0.019039169528406 0.016862055415322 0.016862055415322 0.017902311588744 0.017902311588744 0.018215545726909 0.017902311588744 0.018215545726909 0.016862055415322 0.018318287970852 0.016862055415322 0.019979507199389 0.016862055415322 0 0 0
Commissionnement LCB 9 0.001837510163898 0.001696292837721 0.002282041849409 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000 0.000000000 0.000000000000000 0.000000000000000 0.012048491031212 0.012786886636815 0.012786886636815 0.012786886636815 0.012786886636815 0.000000000000000 0.011770378946029 0 0.000000000000000 0.000000000000000 0.011770378946029 0.011770378946029 0.000000000000000 0.000000000000000 0.012715168503101 0.000000000000000 0.012715168503101 0.011770378946029 0.012786886636815 0.011770378946029 0.000000000000000 0.011770378946029 0 0 0
Activités LCB hors BP 10 0.021780910979247 0.020106992613730 0.004133142214281 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000 0.000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.023159093669351 0.023159093669351 0.023159093669351 0.023159093669351 0.000000000000000 0.021318035912668 0 0.023044632250612 0.000000000000000 0.021318035912668 0.021318035912668 0.023044632250612 0.023044632250612 0.023029200676345 0.023044632250612 0.023029200676345 0.021318035912668 0.023159093669351 0.021318035912668 0.025718488569257 0.021318035912668 0 0 0
Hébergement LCB 11 0.000084712518393 0.000078202146056 0.000105206227394 0.000103569679612 0.007254005292749 0.000000000000000 0.000000000 0.000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.005608725231671 0.000000000000000 0.005608725231671 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0 0 0
Activités Guichet 12 0.670504758884304 0.618974764058445 0.832713717760529 0.690887206952453 0.661735109197448 0.688388159167402 0.437347325 0.916807773 0.702831802158303 0.702831802158303 0.618344260110375 0.656239684793249 0.656239684793249 0.656239684793249 0.656239684793249 0.497288187212165 0.604071185490943 1 0.599676682721299 0.682064755719926 0.604071185490943 0.604071185490943 0.599676682721299 0.599676682721299 0.652559016715125 0.599676682721299 0.652559016715125 0.604071185490943 0.656239684793249 0.604071185490943 0.669256846544291 0.604071185490943 1 0 0
Charges Cantonnées 13 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000 0.000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0 0 0

Vérification des clés

colSums(cle_cor[, -c(1:2)])
weight_code_26 1.00000000000000
weight_code_27 1.00000000000000
weight_code_28 1.00000000000000
weight_code_29 1.00000000000000
weight_code_30 1.00000000000000
weight_code_31 1.00000000000000
weight_code_32 1.00000000000000
weight_code_33 1.00000000000000
weight_code_34 1.00000000000000
weight_code_35 1.00000000000000
weight_code_36 1.64684444696229
weight_code_37 1.00000000000000
weight_code_38 1.00000000000000
weight_code_39 1.00000000000000
weight_code_40 1.00000000000000
weight_code_41 1.00000000000000
weight_code_42 1.00000000000000
weight_code_43 1.00000000000000
weight_code_44 1.00000000000000
weight_code_45 1.00000000000000
weight_code_46 1.00000000000000
weight_code_47 1.00000000000000
weight_code_48 1.00000000000000
weight_code_49 1.00000000000000
weight_code_50 1.00000000000000
weight_code_51 1.00000000000000
weight_code_52 1.00000000000000
weight_code_53 1.00000000000000
weight_code_54 1.00000000000000
weight_code_55 1.00000000000000
weight_code_56 1.00000000000000
weight_code_57 1.00000000000000
weight_code_58 1.00000000000000
weight_code_59 0.00000000000000
weight_code_60 0.00000000000000

Répartition de la fiscalité locale de droit commun (FLDC)

La FLDC se répartie en deux temps:

  • Dans un premier temps il faut distinguer ,dans cette FLDC, deux parts. En effet, une partie de cette fiscalité sera répartie par une clé Masse Salariale alors que l’autre se verra appliquer une clé basée sur les charges de loyers. La clé de répartition permettant de déterminer ces deux montants est fournie par la direction de la Fiscalité.

  • Ensuite, une fois ces deux montants obtenus, il s’agit de déterminer les clés permettant de répartir la fiscalité sur les Activités Opérationnelles concernées.

On doit donc calculer les clés de répartition pour la FLDC. Pour ce faire nous allons calculer les charges réparties sur les activités opérationnelles pour les natures de charge function . La FLDC concerne un certain nombre de rubrique corp qui ont été définis comme appartenant à la FLDC.

# Fonction pour remplacer par zeros les NA
replace_0 <-function(x){
  ifelse(is.na(x),0,x)
}

# Remplacement des des charges opérationnelles par zéros lorsqu'elles sont manquantes
test<-data_cascade%>%mutate_at(vars(starts_with("charge_code_")), funs(replace_0))

# Somme colonnes des charges opérationnelles qui ont été ventilées
# Jointure avec le paamétrage des Rubriques corp concernées par la FLDC
test<-test%>%mutate(tot_charge_vent = rowSums(test[,grepl("charge_code_" ,names(test))]))%>%
                     left_join(fldc)

# Calcule de la charges FLDC totale à ventiler
charge_fldc<-sum(test[which(test$code=="code_59"),]$Ch_AP_Ret)

# Calcule de la part masse salariale de la FLDC
fldc_ms=Part_CVAE/(Part_CVAE+Part_CFE)
# Calcule de la part immobilier de la FLDC
fldc_im=Part_CFE/(Part_CVAE+Part_CFE)

# Construction des clés masses salariale par charge opérationnelle
t_MS<-test%>%
  filter(Nature_FLDC=="MS")%>%
  select(starts_with("charge_code_"))%>%
  summarise_all(sum)

t_MS<-as.data.frame(t(t_MS))%>% add_rownames()%>%
  mutate(code=substr(rowname,8,14))%>%
  mutate(cle_ms=V1/sum(V1),fldc_ms=V1)%>%
  select(code,cle_ms)


# Calcul des clés immobilier par charge opérationnelle
t_im<-test%>%
  filter(Nature_FLDC=="i")%>%
  select(starts_with("charge_code_"))%>%
  summarise_all(sum)

t_im<-as.data.frame(t(t_im))%>% add_rownames()%>%
  mutate(code=substr(rowname,8,14))%>%
  mutate(cle_im=V1/sum(V1),fldc_im=V1)%>%
  select(code,cle_im)                

# Calcule de la clé FLDC finale : cle_ms*fldc_ms+cle_im*fldc_im

cle_fldc<-t_MS%>%left_join(t_im)%>%
          mutate(cle_fldc=cle_ms*fldc_ms+cle_im*fldc_im,
                 charge=stri_replace_all_fixed( paste("charge_",code), " ", ""))



liste_col<-cle_fldc$charge

for (i in 1:length(liste_col))
{
  # Nouvelle variable de clé
  var<-liste_col[i]
  # Construction de la variable : Si le code est le même que la variable, on met la charge de la variable
  data_cascade[[paste(var)]]=ifelse(data_cascade$code=="code_59",
                                    data_cascade$Ch_AP_Ret*cle_fldc[which(cle_fldc$charge==var),]$cle_fldc,data_cascade[[paste(var)]])
  
}


data_cascade<-data_cascade%>%
              select(-c(charge_int,charges_tot_code,montant_no_prod_code))

# Affichage des clés FLDC
kable(cle_fldc, "html") %>%
  kable_styling(bootstrap_options = "striped", full_width = F) %>%
  scroll_box(width = "1000px", height = "400px")
code cle_ms cle_im cle_fldc charge
code_1 0.034041674471228 0.036443588503115 0.034717096153741 charge_code_1
code_2 0.000109319937210 0.018632420520338 0.005318042478954 charge_code_2
code_3 0.002097713080024 0.000228571802901 0.001572107862897 charge_code_3
code_4 0.000000000000000 0.000000000000000 0.000000000000000 charge_code_4
code_5 0.078161021967114 0.028142607386719 0.064095771802434 charge_code_5
code_6 0.000000000000000 0.000000000000000 0.000000000000000 charge_code_6
code_7 0.255340720021782 0.241764583298865 0.251523090837018 charge_code_7
code_8 0.019397930706313 0.017565557140781 0.018882664622600 charge_code_8
code_9 0.002217130195766 0.001360084164413 0.001976127618320 charge_code_9
code_10 0.025418925670625 0.002469076795592 0.018965395138383 charge_code_10
code_11 0.000158422791159 0.003879987244045 0.001204932071250 charge_code_11
code_12 0.583057141158781 0.649513523143231 0.601744771414403 charge_code_12
code_13 0.000000000000000 0.000000000000000 0.000000000000000 charge_code_13

Ce traitement marque ainsi la fin de la cascade. On peut maintenat observer comment les charges se sont réparties sur les activités opérationnelles.

code Lib_Code charge_code_1 charge_code_2 charge_code_3 charge_code_4 charge_code_5 charge_code_6 charge_code_7 charge_code_8 charge_code_9 charge_code_10 charge_code_11 charge_code_12 charge_code_13
code_1 Activités Production CCC en BP 50905950.947957501 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 0.000000000 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000 0
code_10 Activités LCB hors BP 0.000000000 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 0.000000000 0.0000000000 0.0000000000 59498920.6898727119 0.00000000000 0.000000000 0
code_12 Activités Guichet 0.000000000 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 0.000000000 0.0000000000 0.0000000000 0.0000000000 0.00000000000 1087372736.256676435 0
code_13 Charges Cantonnées 0.000000000 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 0.000000000 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000 121929573
code_26 ETN RH tout domaine hors DPOM 4390658.613050769 48032.56545114800 205507.38679251063 0.0 79110.1497537085 0.000000000 28669397.032313343 2010598.2682757911 212739.0778849473 2521700.8364135311 9807.65353161893 77628176.934786260 0
code_27 ETN RH tout domaine -747018.557739988 -8172.17208853702 -34964.64772513620 0.0 -1653318.2426934962 0.000000000 -4877758.329626293 -342079.4807634325 -36195.0343085603 -429037.5289643537 -1668.65608139659 -13207514.836484997 0
code_28 Reprise Brutes Dispositif DFC -7511230.203099717 -82170.73750089237 -351567.59535978822 0.0 -135336.0847585728 0.000000000 -14118981.278479513 -3439590.2232261491 -363939.0642759869 -659151.7637480645 -16778.24443222817 -132800829.805119082 0
code_29 CIE - Non productif & formation 7738868.774662631 99002.88835620566 0.00000000000 0.0 0.0000000000 0.000000000 49007560.327138826 3468272.9473215165 0.0000000000 0.0000000000 20215.16066250440 134850237.449363023 0
code_3 Activités Production CCC hors BP 0.000000000 0.00000000000 5223734.35298541375 0.0 0.0000000000 0.000000000 0.000000000 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000 0
code_30 CIE - Loyers et Charges Immobilières (hors Cplts de Loyers) 13401988.696527822 12537410.30159993842 0.00000000000 0.0 0.0000000000 0.000000000 84870126.199723870 6006272.5173295802 0.0000000000 0.0000000000 2559983.52923502540 233530430.692597240 0
code_31 CIE - Compléments de loyers 4948159.110532839 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 32694766.694317989 2657812.8384933705 0.0000000000 0.0000000000 0.00000000000 89029194.826655805 0
code_32 Directeur de Secteur (DS) 6106877.144198289 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 59151929.954957224 0.0000000000 0.0000000000 0.0000000000 0.00000000000 50725369.283113554 0
code_33 Responsable Espace Comercial (REC) 5960345.452407051 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 3770816.098530344 0.0000000000 0.0000000000 0.0000000000 0.00000000000 107240842.948201627 0
code_34 Responsable d’Exploitation (REX) 2568442.422316091 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 16970882.279565740 0.0000000000 0.0000000000 0.0000000000 0.00000000000 46212410.658072636 0
code_35 CIE - Autres 4936373.077218502 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 32616890.942779716 0.0000000000 0.0000000000 0.0000000000 0.00000000000 88817135.951276869 0
code_36 ST - Transverses en DPOM-DCR 125321.880975861 0.00000000000 0.00000000000 0.0 22348152.2616439611 0.000000000 7058866.326776940 510154.8062769034 356108.1518900173 0.0000000000 0.00000000000 18275934.399525795 0
code_37 ST - Locaux 1551356.414054613 0.00000000000 87181.18041214776 0.0 0.0000000000 0.000000000 11526471.939044835 833035.3327153177 581491.4789439825 1053173.9282039106 0.00000000000 29842900.440947115 0
code_38 ST - Autres 12222361.003330860 0.00000000000 686856.90150907869 0.0 0.0000000000 0.000000000 90811305.421147108 6563068.5977348965 4581280.4276476996 8297430.4506605165 0.00000000000 235117281.413371503 0
code_39 Structures Nationales 2536044.159086914 0.00000000000 142517.42627516313 0.0 0.0000000000 0.000000000 18842634.465599220 1361785.3194187612 950579.7993128250 1721651.8170337891 0.00000000000 48784994.001263663 0
code_4 Commerçants 0.000000000 0.00000000000 0.00000000000 366413.5 0.0000000000 0.000000000 0.000000000 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000 0
code_40 Charges diverses 648236.886756890 0.00000000000 36428.80286062485 0.0 0.0000000000 0.000000000 4816355.685492423 348085.2148130914 242977.1924564570 440070.4971774420 0.00000000000 12469906.140443075 0
code_41 SSM - Formation 1047678.962606951 0.00000000000 58387.20682559533 0.0 3268078.4607987264 0.000000000 14681689.347625215 0.0000000000 0.0000000000 0.0000000000 0.00000000000 18850245.595210612 0
code_42 SSM - Comptabilité Fournisseurs 155635.210457854 0.00000000000 8746.19219573554 0.0 393998.9237347948 0.000000000 1156358.957759552 83571.7879859248 58336.4002527078 105656.5367440895 0.00000000000 2993900.079131703 0
code_43 SSM - Comptabilité Clients 0.000000000 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 0.000000000 0.0000000000 0.0000000000 0.0000000000 0.00000000000 1407901.694229898 0
code_44 SSM - Comptabilité Personnel 37462.411910022 0.00000000000 2087.78229824655 0.0 116858.4135239945 0.000000000 247531.413166849 20122.2469025782 0.0000000000 25902.2293086159 0.00000000000 674038.221914539 0
code_45 SSM - Comptabilité Bureau 892320.555215129 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 6629880.630356560 479151.3696453407 0.0000000000 0.0000000000 0.00000000000 17165258.253644802 0
code_46 SSM - DISFE part bancaire 773881.455997020 0.00000000000 43489.61864705104 0.0 1959122.6166890508 0.000000000 5749886.232386303 415552.8609275450 290072.2672740937 525367.1984030942 0.00000000000 14886886.749675840 0
code_47 SSM - DISFE 2967174.430645890 0.00000000000 166745.54409863974 0.0 7511561.9965988798 0.000000000 22045902.864902318 1593290.3081873404 1112179.4014127227 2014334.5026834845 0.00000000000 57078496.161470719 0
code_48 SSM - Social 697553.667357137 0.00000000000 38874.70465818004 0.0 2175914.7571967226 0.000000000 4609058.419819407 374678.1482215290 0.0000000000 482301.9695140576 0.00000000000 12550655.701631090 0
code_49 SSM - Syndical 510766.078053381 0.00000000000 28465.02192293142 0.0 1593258.6963847657 0.000000000 3374866.770508687 274348.6232743633 0.0000000000 353153.4517472364 0.00000000000 9189901.063825045 0
code_5 DPOM Corse Courrier 0.000000000 0.00000000000 0.00000000000 0.0 230125834.0757984817 0.000000000 0.000000000 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000 0
code_50 SSM - DSEM 4419143.916184184 0.00000000000 248341.50265777402 0.0 0.0000000000 0.000000000 32833936.729838103 2372957.6190128601 1656417.8986904176 3000037.3320674379 730654.32521088666 85009525.038943812 0
code_51 SSM - CSRH 673273.254524205 0.00000000000 37521.55590127489 0.0 2100175.6261931187 0.000000000 4448626.547059971 361636.3701562441 0.0000000000 465514.0269112957 0.00000000000 12113793.111668415 0
code_52 SST - DISIT 1048681.227293998 0.00000000000 58932.47125114351 0.0 0.0000000000 0.000000000 7791629.718289766 563112.7103848169 393074.8551883131 711921.3338579962 173387.30962883751 20173113.784105126 0
code_53 SST - DSI centrale 463476.137044429 0.00000000000 26045.85016978134 0.0 1173314.8214665484 0.000000000 3443595.965221856 248873.8206969018 173723.7310160252 314641.4192494337 0.00000000000 8915728.255135024 0
code_54 SST - DAPO 406937.551711352 0.00000000000 22868.56572146557 0.0 0.0000000000 0.000000000 3023518.147248515 218514.1697375862 152531.4986541495 276258.9022012057 0.00000000000 7828115.274725726 0
code_55 SST - PI Corporate 254321.635244952 0.00000000000 14292.04801948369 0.0 643828.9271059193 0.000000000 1889592.337122173 136563.6588172985 95326.8136620685 172652.0825205668 0.00000000000 4892296.297507538 0
code_56 SST - DNAS 1068437.078804061 0.00000000000 59544.05779518482 0.0 0.0000000000 0.000000000 7059655.972803943 573891.3647952589 0.0000000000 738737.8656633373 0.00000000000 19223733.660138216 0
code_57 Courrier vers RLP 238976.099367639 0.00000000000 13429.67885678141 0.0 604980.8759354409 0.000000000 1775576.056223086 128323.5320034727 89574.8805333269 162234.4130837519 0.00000000000 4597099.593996501 0
code_58 Chargement d’office 0.000000000 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 0.000000000 0.0000000000 0.0000000000 0.0000000000 0.00000000000 9318613.560000001 0
code_59 FLDC - CET 2280772.404758793 349373.82088701177 103281.11012285286 0.0 4210832.2349694762 0.000000000 16524046.890335638 1240514.4776171087 129823.5693500231 1245949.5369490597 79159.14987664022 39532190.805133395 0
code_6 Activités Colis 0.000000000 0.00000000000 0.00000000000 0.0 0.0000000000 -177208.268044403 0.000000000 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000 0
code_60 CIE - Brigades 0.000000000 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 0.000000000 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000 0
code_61
0.000000000 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 0.000000000 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000 0
code_7 Activités LCB en BP 0.000000000 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 392475708.689608157 0.0000000000 0.0000000000 0.0000000000 0.00000000000 0.000000000 0
code_8 Responsable Clientèles Particuliers (RC Part) 0.000000000 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 0.000000000 37841571.3079102859 0.0000000000 0.0000000000 0.00000000000 0.000000000 0
code_9 Commissionnement LCB 0.000000000 0.00000000000 0.00000000000 0.0 0.0000000000 0.000000000 0.000000000 0.0000000000 33830166.8234352246 0.0000000000 0.00000000000 0.000000000 0

On peut maintenant télécharger toute la base de charges avec tous les résultats de la cascade:

  • charge_code_sont les variables de ventiliation sur les activités o^érationnelles